/*
 * Decompiled with CFR 0.150.
 * 
 * Could not load the following classes:
 *  cn.hutool.core.date.DateUtil
 *  cn.hutool.core.util.ObjectUtil
 *  cn.hutool.core.util.StrUtil
 *  com.alibaba.fastjson.JSON
 *  de.felixroske.jfxsupport.FXMLController
 *  javafx.beans.value.ChangeListener
 *  javafx.beans.value.ObservableValue
 *  javafx.collections.FXCollections
 *  javafx.collections.ObservableList
 *  javafx.event.EventHandler
 *  javafx.fxml.FXML
 *  javafx.fxml.Initializable
 *  javafx.scene.control.Alert
 *  javafx.scene.control.Alert$AlertType
 *  javafx.scene.control.Button
 *  javafx.scene.control.ChoiceBox
 *  javafx.scene.control.DatePicker
 *  javafx.scene.control.ScrollPane
 *  javafx.scene.control.TextField
 *  javafx.scene.input.KeyCode
 *  javafx.scene.input.KeyEvent
 *  javafx.scene.layout.GridPane
 *  javafx.stage.Stage
 *  javafx.util.StringConverter
 *  org.slf4j.Logger
 *  org.slf4j.LoggerFactory
 *  org.springframework.beans.factory.annotation.Autowired
 */
package com.gys.controller.dailyReconcile;

import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.gys.common.business.CashPaymentUtil;
import com.gys.common.business.DailyReconcileUtil;
import com.gys.common.data.HttpJson;
import com.gys.common.enums.PayMethod;
import com.gys.common.util.CacheUtil;
import com.gys.common.util.CommonUtil;
import com.gys.common.util.SpringUtil;
import com.gys.controller.BaseController;
import com.gys.controller.dailyReconcile.DailyReconcileController;
import com.gys.controller.index.IndexController;
import com.gys.data.dailyReconcile.DailyReconcileDetailOutData;
import com.gys.data.dailyReconcile.DailyReconcileInData;
import com.gys.data.dailyReconcile.DailyReconcileOutData;
import com.gys.data.dailyReconcile.RechargeCardPaycheckOutData;
import com.gys.data.dailyReconcile.SaleReturnOutData;
import com.gys.data.dailyReconcile.StoreInData;
import com.gys.data.dailyReconcile.StoreOutData;
import com.gys.data.example.GetLoginStoreOutData;
import com.gys.data.example.GetUserOutData;
import com.gys.data.user.GetEmpOutData;
import com.gys.data.user.GetLoginOutData;
import com.gys.view.dailyReconcile.addDailyReconcileView;
import de.felixroske.jfxsupport.FXMLController;
import java.math.BigDecimal;
import java.net.URL;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.ResourceBundle;
import java.util.Timer;
import java.util.TimerTask;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.ChoiceBox;
import javafx.scene.control.DatePicker;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
import javafx.util.StringConverter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;

@FXMLController
public class AddDailyReconcileController
extends BaseController
implements Initializable {
    private static final Logger log = LoggerFactory.getLogger(AddDailyReconcileController.class);
    @FXML
    private TextField saleReceivableSummary;
    @FXML
    private TextField gpdhBrId;
    @FXML
    private TextField recardInputSummary;
    @FXML
    private TextField saleInputStorecard;
    @FXML
    private TextField saleReceivableMedicare;
    @FXML
    private TextField recardInputBankcard;
    @FXML
    private TextField saleInputWechat;
    @FXML
    private TextField saleReceivableCash;
    @FXML
    private DatePicker gpdhSaleDate;
    @FXML
    private Button generatePaymentDetails;
    @FXML
    private TextField saleInputCash;
    @FXML
    private TextField saleReceivableWechat;
    @FXML
    private Button auditReconcile;
    @FXML
    private TextField saleInputBankcard;
    @FXML
    private TextField recardReceivableBankcard;
    @FXML
    private ChoiceBox<GetEmpOutData> gpdhEmp;
    @FXML
    private TextField saleReceivableBankcard;
    @FXML
    private TextField saleInputSummary;
    @FXML
    private TextField recardReceivableMedicare;
    @FXML
    private TextField recardInputMedicare;
    @FXML
    private TextField recardReceivableCash;
    @FXML
    private TextField recardReceivableSummary;
    @FXML
    private TextField saleInputMedicare;
    @FXML
    private TextField saleReceivableStorecard;
    @FXML
    private TextField recardInputWechat;
    @FXML
    private TextField recardReceivableWechat;
    @FXML
    private TextField recardInputCash;
    @FXML
    private GridPane saleTable;
    @FXML
    private GridPane recardTable;
    @FXML
    private ScrollPane scrollPane;
    @FXML
    private TextField saleReceivableAlipay;
    @FXML
    private TextField saleInputAlipay;
    @FXML
    private TextField recardReceivableAlipay;
    @FXML
    private TextField recardInputAlipay;
    @Autowired
    private DailyReconcileController dailyReconcileController;
    @Autowired
    private IndexController indexController;
    private Timer timer = new Timer();
    private ObservableList<DailyReconcileOutData> dailyReconcileOutDataList = FXCollections.observableArrayList(new ArrayList());
    DecimalFormat df = new DecimalFormat("0.00");
    public static final String REGEX_POSITIVE_DECIMAL = "([0-9]\\d*\\.?\\d*)|(0\\.\\d*[0-9])";

    public void initialize(URL location, ResourceBundle resources) {
        final Alert alert= this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        LocalDate localDate = new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
        this.gpdhSaleDate.setValue(localDate);
        StringConverter converter = CommonUtil.dataPickerFormat("yyyyMMdd");
        this.gpdhSaleDate.setConverter(converter);
        this.gpdhBrId.setText(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        this.gpdhBrId.setEditable(false);
        this.gpdhBrId.setDisable(true);
        GetLoginOutData inData = new GetLoginOutData();
        HttpJson rsp = CashPaymentUtil.empList(inData);
        if (rsp.isSuccess()) {
            List empList = JSON.parseArray((String)rsp.getMsg(), GetEmpOutData.class);
            this.gpdhEmp.getItems().addAll((Collection)empList);
            this.gpdhEmp.converterProperty().set(new StringConverter<GetEmpOutData>(){

                public String toString(GetEmpOutData object) {
                    return object.getName();
                }

                public GetEmpOutData fromString(String string) {
                    return null;
                }
            });
        } else {
            //alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", rsp.getMsg());
            alert.setTitle("\u63d0\u793a\u4fe1\u606f");
            alert.setContentText(rsp.getMsg());
            alert.showAndWait();
        }
        //alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        this.saleInputCash.textProperty().addListener(new ChangeListener(){
            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputCashStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.saleInputBankcard.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputBankcardStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.saleInputWechat.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputWechatStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.saleInputAlipay.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputAlipayStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.saleInputMedicare.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputMedicareStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.saleInputStorecard.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String saleInputCashStr = AddDailyReconcileController.this.saleInputCash.getText();
                String saleInputBankcardStr = AddDailyReconcileController.this.saleInputBankcard.getText();
                String saleInputWechatStr = AddDailyReconcileController.this.saleInputWechat.getText();
                String saleInputAlipayStr = AddDailyReconcileController.this.saleInputAlipay.getText();
                String saleInputMedicareStr = AddDailyReconcileController.this.saleInputMedicare.getText();
                String saleInputStorecardStr = AddDailyReconcileController.this.saleInputStorecard.getText();
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr) && !AddDailyReconcileController.isPositiveDecimal(saleInputStorecardStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)saleInputCashStr)) {
                    input = input + Double.parseDouble(saleInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputBankcardStr)) {
                    input = input + Double.parseDouble(saleInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputWechatStr)) {
                    input = input + Double.parseDouble(saleInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputAlipayStr)) {
                    input = input + Double.parseDouble(saleInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputMedicareStr)) {
                    input = input + Double.parseDouble(saleInputMedicareStr);
                }
                if (StrUtil.isNotBlank((CharSequence)saleInputStorecardStr)) {
                    input = input + Double.parseDouble(saleInputStorecardStr);
                }
                AddDailyReconcileController.this.saleInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.recardInputCash.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String recardInputCashStr = AddDailyReconcileController.this.recardInputCash.getText();
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr) && !AddDailyReconcileController.isPositiveDecimal(recardInputCashStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String recardInputBankcardStr = AddDailyReconcileController.this.recardInputBankcard.getText();
                String recardInputWechatStr = AddDailyReconcileController.this.recardInputWechat.getText();
                String recardInputAlipayStr = AddDailyReconcileController.this.recardInputAlipay.getText();
                String recardInputMedicareStr = AddDailyReconcileController.this.recardInputMedicare.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr)) {
                    input = input + Double.parseDouble(recardInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr)) {
                    input = input + Double.parseDouble(recardInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr)) {
                    input = input + Double.parseDouble(recardInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr)) {
                    input = input + Double.parseDouble(recardInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr)) {
                    input = input + Double.parseDouble(recardInputMedicareStr);
                }
                AddDailyReconcileController.this.recardInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.recardInputBankcard.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String recardInputCashStr = AddDailyReconcileController.this.recardInputCash.getText();
                String recardInputBankcardStr = AddDailyReconcileController.this.recardInputBankcard.getText();
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr) && !AddDailyReconcileController.isPositiveDecimal(recardInputBankcardStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String recardInputWechatStr = AddDailyReconcileController.this.recardInputWechat.getText();
                String recardInputAlipayStr = AddDailyReconcileController.this.recardInputAlipay.getText();
                String recardInputMedicareStr = AddDailyReconcileController.this.recardInputMedicare.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr)) {
                    input = input + Double.parseDouble(recardInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr)) {
                    input = input + Double.parseDouble(recardInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr)) {
                    input = input + Double.parseDouble(recardInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr)) {
                    input = input + Double.parseDouble(recardInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr)) {
                    input = input + Double.parseDouble(recardInputMedicareStr);
                }
                AddDailyReconcileController.this.recardInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.recardInputWechat.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String recardInputCashStr = AddDailyReconcileController.this.recardInputCash.getText();
                String recardInputBankcardStr = AddDailyReconcileController.this.recardInputBankcard.getText();
                String recardInputWechatStr = AddDailyReconcileController.this.recardInputWechat.getText();
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr) && !AddDailyReconcileController.isPositiveDecimal(recardInputWechatStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String recardInputAlipayStr = AddDailyReconcileController.this.recardInputAlipay.getText();
                String recardInputMedicareStr = AddDailyReconcileController.this.recardInputMedicare.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr)) {
                    input = input + Double.parseDouble(recardInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr)) {
                    input = input + Double.parseDouble(recardInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr)) {
                    input = input + Double.parseDouble(recardInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr)) {
                    input = input + Double.parseDouble(recardInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr)) {
                    input = input + Double.parseDouble(recardInputMedicareStr);
                }
                AddDailyReconcileController.this.recardInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.recardInputAlipay.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String recardInputCashStr = AddDailyReconcileController.this.recardInputCash.getText();
                String recardInputBankcardStr = AddDailyReconcileController.this.recardInputBankcard.getText();
                String recardInputWechatStr = AddDailyReconcileController.this.recardInputWechat.getText();
                String recardInputAlipayStr = AddDailyReconcileController.this.recardInputAlipay.getText();
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr) && !AddDailyReconcileController.isPositiveDecimal(recardInputAlipayStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                String recardInputMedicareStr = AddDailyReconcileController.this.recardInputMedicare.getText();
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr)) {
                    input = input + Double.parseDouble(recardInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr)) {
                    input = input + Double.parseDouble(recardInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr)) {
                    input = input + Double.parseDouble(recardInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr)) {
                    input = input + Double.parseDouble(recardInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr)) {
                    input = input + Double.parseDouble(recardInputMedicareStr);
                }
                AddDailyReconcileController.this.recardInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.recardInputMedicare.textProperty().addListener(new ChangeListener(){

            public void changed(ObservableValue observable, Object oldValue, Object newValue) {
                String recardInputCashStr = AddDailyReconcileController.this.recardInputCash.getText();
                String recardInputBankcardStr = AddDailyReconcileController.this.recardInputBankcard.getText();
                String recardInputWechatStr = AddDailyReconcileController.this.recardInputWechat.getText();
                String recardInputAlipayStr = AddDailyReconcileController.this.recardInputAlipay.getText();
                String recardInputMedicareStr = AddDailyReconcileController.this.recardInputMedicare.getText();
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr) && !AddDailyReconcileController.isPositiveDecimal(recardInputMedicareStr)) {
                    alert.setContentText("\u8bf7\u8f93\u5165\u6570\u5b57");
                    alert.showAndWait();
                    return;
                }
                Double input = 0.0;
                if (StrUtil.isNotBlank((CharSequence)recardInputCashStr)) {
                    input = input + Double.parseDouble(recardInputCashStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputBankcardStr)) {
                    input = input + Double.parseDouble(recardInputBankcardStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputWechatStr)) {
                    input = input + Double.parseDouble(recardInputWechatStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputAlipayStr)) {
                    input = input + Double.parseDouble(recardInputAlipayStr);
                }
                if (StrUtil.isNotBlank((CharSequence)recardInputMedicareStr)) {
                    input = input + Double.parseDouble(recardInputMedicareStr);
                }
                AddDailyReconcileController.this.recardInputSummary.setText(AddDailyReconcileController.this.df.format(input));
            }
        });
        this.init();
    }

    @Override
    public void init() {
        if (ObjectUtil.isEmpty(this.scrollPane)) {
            return;
        }
        this.timer.schedule(new TimerTask(){

            @Override
            public void run() {
                addDailyReconcileView view = SpringUtil.getBean(addDailyReconcileView.class);
                Stage stage = (Stage)view.getView().getScene().getWindow();
                stage.getScene().setOnKeyReleased((EventHandler)new EventHandler<KeyEvent>(){

                    public void handle(KeyEvent e) {
                        if (e.getCode() == KeyCode.F7) {
                            AddDailyReconcileController.this.generatePaymentDetailsAction();
                            return;
                        }
                        if (e.getCode() == KeyCode.F8) {
                            AddDailyReconcileController.this.auditReconcileAction();
                            return;
                        }
                    }
                });
            }
        }, 1000L);
        this.gpdhEmp.setValue(null);
        LocalDate localDate = new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
        this.gpdhSaleDate.setValue(localDate);
        this.saleReceivableCash.clear();
        this.saleReceivableCash.setEditable(false);
        this.saleReceivableCash.setDisable(true);
        this.saleInputCash.clear();
        this.saleReceivableBankcard.clear();
        this.saleReceivableBankcard.setEditable(false);
        this.saleReceivableBankcard.setDisable(true);
        this.saleInputBankcard.clear();
        this.saleReceivableWechat.clear();
        this.saleReceivableWechat.setEditable(false);
        this.saleReceivableWechat.setDisable(true);
        this.saleInputWechat.clear();
        this.saleReceivableAlipay.clear();
        this.saleReceivableAlipay.setEditable(false);
        this.saleReceivableAlipay.setDisable(true);
        this.saleInputAlipay.clear();
        this.saleReceivableMedicare.clear();
        this.saleReceivableMedicare.setEditable(false);
        this.saleReceivableMedicare.setDisable(true);
        this.saleInputMedicare.clear();
        this.saleReceivableStorecard.clear();
        this.saleReceivableStorecard.setEditable(false);
        this.saleReceivableStorecard.setDisable(true);
        this.saleInputStorecard.clear();
        this.saleReceivableSummary.clear();
        this.saleReceivableSummary.setEditable(false);
        this.saleReceivableSummary.setDisable(true);
        this.saleInputSummary.clear();
        this.saleInputSummary.setEditable(false);
        this.saleInputSummary.setDisable(true);
        this.recardReceivableCash.clear();
        this.recardReceivableCash.setEditable(false);
        this.recardReceivableCash.setDisable(true);
        this.recardInputCash.clear();
        this.recardReceivableBankcard.clear();
        this.recardReceivableBankcard.setEditable(false);
        this.recardReceivableBankcard.setDisable(true);
        this.recardInputBankcard.clear();
        this.recardReceivableWechat.clear();
        this.recardReceivableWechat.setEditable(false);
        this.recardReceivableWechat.setDisable(true);
        this.recardInputWechat.clear();
        this.recardReceivableAlipay.clear();
        this.recardReceivableAlipay.setEditable(false);
        this.recardReceivableAlipay.setDisable(true);
        this.recardInputAlipay.clear();
        this.recardReceivableMedicare.clear();
        this.recardReceivableMedicare.setEditable(false);
        this.recardReceivableMedicare.setDisable(true);
        this.recardInputMedicare.clear();
        this.recardReceivableSummary.clear();
        this.recardReceivableSummary.setEditable(false);
        this.recardReceivableSummary.setDisable(true);
        this.recardInputSummary.clear();
        this.recardInputSummary.setEditable(false);
        this.recardInputSummary.setDisable(true);
    }

    @FXML
    void generatePaymentDetailsAction() {
        HttpJson rsp;
        Object inData;
        String saleDate;
        Alert alert;
        block72: {
            alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
            if (ObjectUtil.isNull(this.gpdhEmp.getValue())) {
                alert.setContentText("\u8bf7\u5148\u9009\u62e9\u5bf9\u8d26\u5458\u5de5");
                alert.showAndWait();
                return;
            }
            saleDate = DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.gpdhSaleDate.getValue()).toString()), (String)"yyyyMMdd");
            SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
            try {
                if (format.parse(saleDate).compareTo(format.parse(DateUtil.format((Date)new Date(), (String)"yyyyMMdd"))) == 1) {
                    alert.setContentText("\u4e0d\u53ef\u505a\u672a\u6765\u65e5\u671f\u7684\u5bf9\u8d26");
                    alert.showAndWait();
                    return;
                }
                if (format.parse(saleDate).compareTo(format.parse(DateUtil.format((Date)new Date(), (String)"yyyyMMdd"))) != 0) break block72;
                inData = new StoreInData();
                ((StoreInData)inData).setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
                ((StoreInData)inData).setGsstBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
                List<StoreOutData> outDataList = null;
                rsp = DailyReconcileUtil.getStoreData((StoreInData)inData);
                if (rsp.isSuccess()) {
                    outDataList = JSON.parseArray((String)rsp.getMsg(), StoreOutData.class);
                    for (StoreOutData outData : outDataList) {
                        String closeDate = outData.getGsstDailyCloseDate();
                        Calendar now = Calendar.getInstance();
                        if (!ObjectUtil.isNotNull(closeDate)) continue;
                        if (Integer.parseInt(closeDate.split(":")[0]) < now.get(11)) {
                            if (Integer.parseInt(closeDate.split(":")[1]) < now.get(12)) continue;
                            alert.setContentText("\u672a\u5230\u95ed\u5e97\u65f6\u95f4\uff0c\u4e0d\u53ef\u8fdb\u884c\u65e5\u7ed3\u5bf9\u8d26");
                            alert.showAndWait();
                            return;
                        }
                        alert.setContentText("\u672a\u5230\u95ed\u5e97\u65f6\u95f4\uff0c\u4e0d\u53ef\u8fdb\u884c\u65e5\u7ed3\u5bf9\u8d26");
                        alert.showAndWait();
                        return;
                    }
                    break block72;
                }
                alert.setContentText(rsp.getMsg());
                alert.showAndWait();
                return;
            }
            catch (ParseException e) {
                alert.setContentText(e.getMessage());
                alert.showAndWait();
                return;
            }
        }
        inData = new DailyReconcileInData();
        ((DailyReconcileInData)inData).setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
        ((DailyReconcileInData)inData).setGpdhBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        ((DailyReconcileInData)inData).setGpdhSaleDate(saleDate);
        List detailOutDataList = null;
        rsp = DailyReconcileUtil.getDailyReconcileInfo((DailyReconcileInData)inData);
        if (rsp.isSuccess()) {
            detailOutDataList = JSON.parseArray((String)rsp.getMsg(), DailyReconcileOutData.class);
            if (detailOutDataList.size() > 0) {
                alert.setContentText(saleDate + "\u5df2\u7ecf\u5b8c\u6210\u65e5\u7ed3\u5bf9\u8d26");
                alert.showAndWait();
            } else {
                List<SaleReturnOutData> saleReturnOutDataList = null;
                HttpJson rsp2 = DailyReconcileUtil.saleInfoList((DailyReconcileInData)inData);
                if (rsp2.isSuccess()) {
                    saleReturnOutDataList = JSON.parseArray((String)rsp2.getMsg(), SaleReturnOutData.class);
                    BigDecimal amt1 = BigDecimal.ZERO;
                    BigDecimal amt2 = BigDecimal.ZERO;
                    BigDecimal amt3 = BigDecimal.ZERO;
                    BigDecimal amt4 = BigDecimal.ZERO;
                    BigDecimal amt5 = BigDecimal.ZERO;
                    BigDecimal amt6 = BigDecimal.ZERO;
                    for (SaleReturnOutData outData : saleReturnOutDataList) {
                        if (!ObjectUtil.isNotNull(outData)) continue;
                        if (ObjectUtil.isNotNull(outData.getGsshPaymentAmt1())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt1 = amt1.add(outData.getGsshPaymentAmt1());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt2 = amt2.add(outData.getGsshPaymentAmt1());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt3 = amt3.add(outData.getGsshPaymentAmt1());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt4 = amt4.add(outData.getGsshPaymentAmt1());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt5 = amt5.add(outData.getGsshPaymentAmt1());
                            }
                            if (PayMethod.P6.getCode().equals(outData.getGsshPaymentNo1())) {
                                amt6 = amt6.add(outData.getGsshPaymentAmt1());
                            }
                        }
                        if (ObjectUtil.isNotNull(outData.getGsshPaymentAmt2())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt1 = amt1.add(outData.getGsshPaymentAmt2());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt2 = amt2.add(outData.getGsshPaymentAmt2());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt3 = amt3.add(outData.getGsshPaymentAmt2());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt4 = amt4.add(outData.getGsshPaymentAmt2());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt5 = amt5.add(outData.getGsshPaymentAmt2());
                            }
                            if (PayMethod.P6.getCode().equals(outData.getGsshPaymentNo2())) {
                                amt6 = amt6.add(outData.getGsshPaymentAmt2());
                            }
                        }
                        if (ObjectUtil.isNotNull(outData.getGsshPaymentAmt3())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt1 = amt1.add(outData.getGsshPaymentAmt3());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt2 = amt2.add(outData.getGsshPaymentAmt3());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt3 = amt3.add(outData.getGsshPaymentAmt3());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt4 = amt4.add(outData.getGsshPaymentAmt3());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt5 = amt5.add(outData.getGsshPaymentAmt3());
                            }
                            if (PayMethod.P6.getCode().equals(outData.getGsshPaymentNo3())) {
                                amt6 = amt6.add(outData.getGsshPaymentAmt3());
                            }
                        }
                        if (ObjectUtil.isNotNull(outData.getGsshPaymentAmt4())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt1 = amt1.add(outData.getGsshPaymentAmt4());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt2 = amt2.add(outData.getGsshPaymentAmt4());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt3 = amt3.add(outData.getGsshPaymentAmt4());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt4 = amt4.add(outData.getGsshPaymentAmt4());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt5 = amt5.add(outData.getGsshPaymentAmt4());
                            }
                            if (PayMethod.P6.getCode().equals(outData.getGsshPaymentNo4())) {
                                amt6 = amt6.add(outData.getGsshPaymentAmt4());
                            }
                        }
                        if (!ObjectUtil.isNotNull(outData.getGsshPaymentAmt5())) continue;
                        if (PayMethod.P1.getCode().equals(outData.getGsshPaymentNo5())) {
                            amt1 = amt1.add(outData.getGsshPaymentAmt5());
                        }
                        if (PayMethod.P2.getCode().equals(outData.getGsshPaymentNo5())) {
                            amt2 = amt2.add(outData.getGsshPaymentAmt5());
                        }
                        if (PayMethod.P3.getCode().equals(outData.getGsshPaymentNo5())) {
                            amt3 = amt3.add(outData.getGsshPaymentAmt5());
                        }
                        if (PayMethod.P4.getCode().equals(outData.getGsshPaymentNo5())) {
                            amt4 = amt4.add(outData.getGsshPaymentAmt5());
                        }
                        if (PayMethod.P5.getCode().equals(outData.getGsshPaymentNo5())) {
                            amt5 = amt5.add(outData.getGsshPaymentAmt5());
                        }
                        if (!PayMethod.P6.getCode().equals(outData.getGsshPaymentNo5())) continue;
                        amt6 = amt6.add(outData.getGsshPaymentAmt5());
                    }
                    this.saleReceivableCash.setText(this.df.format(amt1));
                    this.saleReceivableBankcard.setText(this.df.format(amt2));
                    this.saleReceivableWechat.setText(this.df.format(amt3));
                    this.saleReceivableAlipay.setText(this.df.format(amt4));
                    this.saleReceivableMedicare.setText(this.df.format(amt5));
                    this.saleReceivableStorecard.setText(this.df.format(amt6));
                    this.saleReceivableSummary.setText(this.df.format(amt1.add(amt2).add(amt3).add(amt4).add(amt5).add(amt6).doubleValue()));
                } else {
                    alert.setContentText(rsp2.getMsg());
                    alert.showAndWait();
                }
                List<RechargeCardPaycheckOutData> rechargeCardPaycheckOutDataList = null;
                HttpJson rsp3 = DailyReconcileUtil.rechargeInfoList((DailyReconcileInData)inData);
                if (rsp3.isSuccess()) {
                    rechargeCardPaycheckOutDataList = JSON.parseArray((String)rsp3.getMsg(), RechargeCardPaycheckOutData.class);
                    BigDecimal amt1 = BigDecimal.ZERO;
                    BigDecimal amt2 = BigDecimal.ZERO;
                    BigDecimal amt3 = BigDecimal.ZERO;
                    BigDecimal amt4 = BigDecimal.ZERO;
                    BigDecimal amt5 = BigDecimal.ZERO;
                    for (RechargeCardPaycheckOutData outData : rechargeCardPaycheckOutDataList) {
                        if (!ObjectUtil.isNotNull(outData)) continue;
                        if (ObjectUtil.isNotNull(outData.getGsrcpPaymentAmt1())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsrcpPaymentNo1())) {
                                amt1 = amt1.add(outData.getGsrcpPaymentAmt1());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsrcpPaymentNo1())) {
                                amt2 = amt2.add(outData.getGsrcpPaymentAmt1());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsrcpPaymentNo1())) {
                                amt3 = amt3.add(outData.getGsrcpPaymentAmt1());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsrcpPaymentNo1())) {
                                amt4 = amt4.add(outData.getGsrcpPaymentAmt1());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsrcpPaymentNo1())) {
                                amt5 = amt5.add(outData.getGsrcpPaymentAmt1());
                            }
                        }
                        if (ObjectUtil.isNotNull(outData.getGsrcpPaymentAmt2())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsrcpPaymentNo2())) {
                                amt1 = amt1.add(outData.getGsrcpPaymentAmt2());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsrcpPaymentNo2())) {
                                amt2 = amt2.add(outData.getGsrcpPaymentAmt2());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsrcpPaymentNo2())) {
                                amt3 = amt3.add(outData.getGsrcpPaymentAmt2());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsrcpPaymentNo2())) {
                                amt4 = amt4.add(outData.getGsrcpPaymentAmt2());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsrcpPaymentNo2())) {
                                amt5 = amt5.add(outData.getGsrcpPaymentAmt2());
                            }
                        }
                        if (ObjectUtil.isNotNull(outData.getGsrcpPaymentAmt3())) {
                            if (PayMethod.P1.getCode().equals(outData.getGsrcpPaymentNo3())) {
                                amt1 = amt1.add(outData.getGsrcpPaymentAmt3());
                            }
                            if (PayMethod.P2.getCode().equals(outData.getGsrcpPaymentNo3())) {
                                amt2 = amt2.add(outData.getGsrcpPaymentAmt3());
                            }
                            if (PayMethod.P3.getCode().equals(outData.getGsrcpPaymentNo3())) {
                                amt3 = amt3.add(outData.getGsrcpPaymentAmt3());
                            }
                            if (PayMethod.P4.getCode().equals(outData.getGsrcpPaymentNo3())) {
                                amt4 = amt4.add(outData.getGsrcpPaymentAmt3());
                            }
                            if (PayMethod.P5.getCode().equals(outData.getGsrcpPaymentNo3())) {
                                amt5 = amt5.add(outData.getGsrcpPaymentAmt3());
                            }
                        }
                        if (!ObjectUtil.isNotNull(outData.getGsrcpPaymentAmt4())) continue;
                        if (PayMethod.P1.getCode().equals(outData.getGsrcpPaymentNo4())) {
                            amt1 = amt1.add(outData.getGsrcpPaymentAmt4());
                        }
                        if (PayMethod.P2.getCode().equals(outData.getGsrcpPaymentNo4())) {
                            amt2 = amt2.add(outData.getGsrcpPaymentAmt4());
                        }
                        if (PayMethod.P3.getCode().equals(outData.getGsrcpPaymentNo4())) {
                            amt3 = amt3.add(outData.getGsrcpPaymentAmt4());
                        }
                        if (PayMethod.P4.getCode().equals(outData.getGsrcpPaymentNo4())) {
                            amt4 = amt4.add(outData.getGsrcpPaymentAmt4());
                        }
                        if (!PayMethod.P5.getCode().equals(outData.getGsrcpPaymentNo4())) continue;
                        amt5 = amt5.add(outData.getGsrcpPaymentAmt4());
                    }
                    this.recardReceivableCash.setText(this.df.format(amt1));
                    this.recardReceivableBankcard.setText(this.df.format(amt2));
                    this.recardReceivableWechat.setText(this.df.format(amt3));
                    this.recardReceivableAlipay.setText(this.df.format(amt4));
                    this.recardReceivableMedicare.setText(this.df.format(amt5));
                    this.recardReceivableSummary.setText(this.df.format(amt1.add(amt2).add(amt3).add(amt4).add(amt5).doubleValue()));
                } else {
                    alert.setContentText(rsp3.getMsg());
                    alert.showAndWait();
                }
            }
        } else {
            alert.setContentText(rsp.getMsg());
            alert.showAndWait();
        }
    }

    @FXML
    void auditReconcileAction() {
        Alert alert = this.createAlert(Alert.AlertType.INFORMATION, "\u63d0\u793a\u4fe1\u606f", null);
        if (StrUtil.isBlank((CharSequence)this.saleReceivableSummary.getText().trim()) || StrUtil.isBlank((CharSequence)this.recardReceivableSummary.getText().trim())) {
            alert.setContentText("\u8bf7\u5148\u751f\u6210\u652f\u4ed8\u660e\u7ec6\uff0c\u518d\u8fdb\u884c\u5ba1\u6838");
            alert.showAndWait();
            return;
        }
        String saleDate = DateUtil.format((Date)DateUtil.parse((String)((LocalDate)this.gpdhSaleDate.getValue()).toString()), (String)"yyyyMMdd");
        DailyReconcileInData inData = new DailyReconcileInData();
        inData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
        inData.setGpdhBrId(((GetLoginStoreOutData)CacheUtil.get("store")).getStoCode());
        inData.setGpdhSaleDate(saleDate);
        List outDataList = null;
        HttpJson rsp = DailyReconcileUtil.getDailyReconcileInfo(inData);
        if (rsp.isSuccess()) {
            outDataList = JSON.parseArray((String)rsp.getMsg(), DailyReconcileOutData.class);
            if (outDataList.size() > 0) {
                alert.setContentText(saleDate + "\u5df2\u7ecf\u5b8c\u6210\u65e5\u7ed3\u5bf9\u8d26");
                alert.showAndWait();
            } else {
                String brId = this.gpdhBrId.getText().trim();
                String emp = "";
                if (ObjectUtil.isNotNull(this.gpdhEmp.getValue())) {
                    emp = ((GetEmpOutData)this.gpdhEmp.getValue()).getName();
                }
                String saleRCash = this.saleReceivableCash.getText().trim();
                String saleICash = this.saleInputCash.getText().trim();
                String saleRBankcard = this.saleReceivableBankcard.getText().trim();
                String saleIBankcard = this.saleInputBankcard.getText().trim();
                String saleRWechat = this.saleReceivableWechat.getText().trim();
                String saleIWechat = this.saleInputWechat.getText().trim();
                String saleRAlipay = this.saleReceivableAlipay.getText().trim();
                String saleIAlipay = this.saleInputAlipay.getText().trim();
                String saleRMedicare = this.saleReceivableMedicare.getText().trim();
                String saleIMedicare = this.saleInputMedicare.getText().trim();
                String saleRStorecard = this.saleReceivableStorecard.getText().trim();
                String saleIStorecard = this.saleInputStorecard.getText().trim();
                String saleRSummary = this.saleReceivableSummary.getText().trim();
                String saleISummary = this.saleInputSummary.getText().trim();
                String recardRCash = this.recardReceivableCash.getText().trim();
                String recardICash = this.recardInputCash.getText().trim();
                String recardRBankcard = this.recardReceivableBankcard.getText().trim();
                String recardIBankcard = this.recardInputBankcard.getText().trim();
                String recardRWechat = this.recardReceivableWechat.getText().trim();
                String recardIWechat = this.recardInputWechat.getText().trim();
                String recardRAlipay = this.recardReceivableAlipay.getText().trim();
                String recardIAlipay = this.recardInputAlipay.getText().trim();
                String recardRMedicare = this.recardReceivableMedicare.getText().trim();
                String recardIMedicare = this.recardInputMedicare.getText().trim();
                String recardRSummary = this.recardReceivableSummary.getText().trim();
                String recardISummary = this.recardInputSummary.getText().trim();
                if (!saleRSummary.equals(saleISummary) || !recardRSummary.equals(recardISummary)) {
                    alert.setContentText("\u6c47\u603b\u91d1\u989d\u4e0d\u4e00\u81f4\uff0c\u8bf7\u91cd\u65b0\u6838\u5bf9\u5f55\u5165\u4fe1\u606f");
                    alert.showAndWait();
                    return;
                }
                DailyReconcileOutData outData = new DailyReconcileOutData();
                outData.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
                outData.setGpdhBrId(brId);
                outData.setGpdhSaleDate(saleDate);
                outData.setGpdhEmp(emp);
                outData.setGpdhtotalSalesAmt(new BigDecimal(saleRSummary).add(new BigDecimal(recardRSummary)).toString());
                outData.setGpdhtotalInputAmt(new BigDecimal(saleISummary).add(new BigDecimal(recardISummary)).toString());
                ArrayList<DailyReconcileDetailOutData> detailOutDataList = new ArrayList<DailyReconcileDetailOutData>();
                DailyReconcileDetailOutData cashData = new DailyReconcileDetailOutData();
                cashData.setGspddSalePaymethodId(PayMethod.P1.getCode());
                cashData.setGspddSaleReceivableAmt(saleRCash);
                cashData.setGspddSaleInputAmt(saleICash);
                cashData.setGspddRecardPaymethodId(PayMethod.P1.getCode());
                cashData.setGspddRecardReceivableAmt(recardRCash);
                cashData.setGspddRecardInputAmt(recardICash);
                detailOutDataList.add(cashData);
                DailyReconcileDetailOutData bankcardData = new DailyReconcileDetailOutData();
                bankcardData.setGspddSalePaymethodId(PayMethod.P2.getCode());
                bankcardData.setGspddSaleReceivableAmt(saleRBankcard);
                bankcardData.setGspddSaleInputAmt(saleIBankcard);
                bankcardData.setGspddRecardPaymethodId(PayMethod.P2.getCode());
                bankcardData.setGspddRecardReceivableAmt(recardRBankcard);
                bankcardData.setGspddRecardInputAmt(recardIBankcard);
                detailOutDataList.add(bankcardData);
                DailyReconcileDetailOutData weChatData = new DailyReconcileDetailOutData();
                weChatData.setGspddSalePaymethodId(PayMethod.P3.getCode());
                weChatData.setGspddSaleReceivableAmt(saleRWechat);
                weChatData.setGspddSaleInputAmt(saleIWechat);
                weChatData.setGspddRecardPaymethodId(PayMethod.P3.getCode());
                weChatData.setGspddRecardReceivableAmt(recardRWechat);
                weChatData.setGspddRecardInputAmt(recardIWechat);
                detailOutDataList.add(weChatData);
                DailyReconcileDetailOutData alipayData = new DailyReconcileDetailOutData();
                alipayData.setGspddSalePaymethodId(PayMethod.P4.getCode());
                alipayData.setGspddSaleReceivableAmt(saleRAlipay);
                alipayData.setGspddSaleInputAmt(saleIAlipay);
                alipayData.setGspddRecardPaymethodId(PayMethod.P4.getCode());
                alipayData.setGspddRecardReceivableAmt(recardRAlipay);
                alipayData.setGspddRecardInputAmt(recardIAlipay);
                detailOutDataList.add(alipayData);
                DailyReconcileDetailOutData medicareData = new DailyReconcileDetailOutData();
                medicareData.setGspddSalePaymethodId(PayMethod.P5.getCode());
                medicareData.setGspddSaleReceivableAmt(saleRMedicare);
                medicareData.setGspddSaleInputAmt(saleIMedicare);
                medicareData.setGspddRecardPaymethodId(PayMethod.P5.getCode());
                medicareData.setGspddRecardReceivableAmt(recardRMedicare);
                medicareData.setGspddRecardInputAmt(recardIMedicare);
                detailOutDataList.add(medicareData);
                DailyReconcileDetailOutData storeCardData = new DailyReconcileDetailOutData();
                storeCardData.setGspddSalePaymethodId(PayMethod.P6.getCode());
                storeCardData.setGspddSaleReceivableAmt(saleRStorecard);
                storeCardData.setGspddSaleInputAmt(saleIStorecard);
                detailOutDataList.add(storeCardData);
                outData.setDetailOutDataList(detailOutDataList);
                HttpJson rsp2 = DailyReconcileUtil.insert(outData);
                if (rsp2.isSuccess()) {
                    HttpJson rsp3 = DailyReconcileUtil.getDailyReconcileInfo(inData);
                    if (rsp3.isSuccess()) {
                        outDataList = JSON.parseArray((String)rsp3.getMsg(), DailyReconcileOutData.class);
                        this.dailyReconcileOutDataList.addAll((Collection)outDataList);
                        DailyReconcileOutData param = new DailyReconcileOutData();
                        param.setClientId(((GetUserOutData)CacheUtil.get("logInUser")).getClient());
                        param.setGpdhVoucherId(((DailyReconcileOutData)this.dailyReconcileOutDataList.get(0)).getGpdhVoucherId());
                        HttpJson rsp4 = DailyReconcileUtil.approve(param);
                        if (rsp4.isSuccess()) {
                            ((DailyReconcileOutData)this.dailyReconcileOutDataList.get(0)).setGpdhStatus("\u5df2\u5ba1\u6838");
                            alert.setContentText("\u5ba1\u6838\u6210\u529f!");
                            alert.showAndWait();
                            this.closeWindow();
                            this.dailyReconcileController.init();
                        } else {
                            alert.setContentText(rsp4.getMsg());
                            alert.showAndWait();
                        }
                    } else {
                        alert.setContentText(rsp3.getMsg());
                        alert.showAndWait();
                    }
                } else {
                    alert.setContentText(rsp2.getMsg());
                    alert.showAndWait();
                }
            }
        } else {
            alert.setContentText(rsp.getMsg());
            alert.showAndWait();
        }
    }

    @FXML
    private void closeWindow() {
        this.scrollPane.getScene().getWindow().hide();
    }

    public static boolean isPositiveDecimal(String orginal) {
        return AddDailyReconcileController.isMatch(REGEX_POSITIVE_DECIMAL, orginal);
    }

    private static boolean isMatch(String regex, String orginal) {
        if (orginal == null || orginal.trim().equals("")) {
            return false;
        }
        Pattern pattern = Pattern.compile(regex);
        Matcher isNum = pattern.matcher(orginal);
        return isNum.matches();
    }

    public TextField getSaleReceivableSummary() {
        return this.saleReceivableSummary;
    }

    public TextField getGpdhBrId() {
        return this.gpdhBrId;
    }

    public TextField getRecardInputSummary() {
        return this.recardInputSummary;
    }

    public TextField getSaleInputStorecard() {
        return this.saleInputStorecard;
    }

    public TextField getSaleReceivableMedicare() {
        return this.saleReceivableMedicare;
    }

    public TextField getRecardInputBankcard() {
        return this.recardInputBankcard;
    }

    public TextField getSaleInputWechat() {
        return this.saleInputWechat;
    }

    public TextField getSaleReceivableCash() {
        return this.saleReceivableCash;
    }

    public DatePicker getGpdhSaleDate() {
        return this.gpdhSaleDate;
    }

    public Button getGeneratePaymentDetails() {
        return this.generatePaymentDetails;
    }

    public TextField getSaleInputCash() {
        return this.saleInputCash;
    }

    public TextField getSaleReceivableWechat() {
        return this.saleReceivableWechat;
    }

    public Button getAuditReconcile() {
        return this.auditReconcile;
    }

    public TextField getSaleInputBankcard() {
        return this.saleInputBankcard;
    }

    public TextField getRecardReceivableBankcard() {
        return this.recardReceivableBankcard;
    }

    public ChoiceBox<GetEmpOutData> getGpdhEmp() {
        return this.gpdhEmp;
    }

    public TextField getSaleReceivableBankcard() {
        return this.saleReceivableBankcard;
    }

    public TextField getSaleInputSummary() {
        return this.saleInputSummary;
    }

    public TextField getRecardReceivableMedicare() {
        return this.recardReceivableMedicare;
    }

    public TextField getRecardInputMedicare() {
        return this.recardInputMedicare;
    }

    public TextField getRecardReceivableCash() {
        return this.recardReceivableCash;
    }

    public TextField getRecardReceivableSummary() {
        return this.recardReceivableSummary;
    }

    public TextField getSaleInputMedicare() {
        return this.saleInputMedicare;
    }

    public TextField getSaleReceivableStorecard() {
        return this.saleReceivableStorecard;
    }

    public TextField getRecardInputWechat() {
        return this.recardInputWechat;
    }

    public TextField getRecardReceivableWechat() {
        return this.recardReceivableWechat;
    }

    public TextField getRecardInputCash() {
        return this.recardInputCash;
    }

    public GridPane getSaleTable() {
        return this.saleTable;
    }

    public GridPane getRecardTable() {
        return this.recardTable;
    }

    public ScrollPane getScrollPane() {
        return this.scrollPane;
    }

    public TextField getSaleReceivableAlipay() {
        return this.saleReceivableAlipay;
    }

    public TextField getSaleInputAlipay() {
        return this.saleInputAlipay;
    }

    public TextField getRecardReceivableAlipay() {
        return this.recardReceivableAlipay;
    }

    public TextField getRecardInputAlipay() {
        return this.recardInputAlipay;
    }

    public DailyReconcileController getDailyReconcileController() {
        return this.dailyReconcileController;
    }

    public IndexController getIndexController() {
        return this.indexController;
    }

    public Timer getTimer() {
        return this.timer;
    }

    public ObservableList<DailyReconcileOutData> getDailyReconcileOutDataList() {
        return this.dailyReconcileOutDataList;
    }

    public DecimalFormat getDf() {
        return this.df;
    }

    public void setSaleReceivableSummary(TextField saleReceivableSummary) {
        this.saleReceivableSummary = saleReceivableSummary;
    }

    public void setGpdhBrId(TextField gpdhBrId) {
        this.gpdhBrId = gpdhBrId;
    }

    public void setRecardInputSummary(TextField recardInputSummary) {
        this.recardInputSummary = recardInputSummary;
    }

    public void setSaleInputStorecard(TextField saleInputStorecard) {
        this.saleInputStorecard = saleInputStorecard;
    }

    public void setSaleReceivableMedicare(TextField saleReceivableMedicare) {
        this.saleReceivableMedicare = saleReceivableMedicare;
    }

    public void setRecardInputBankcard(TextField recardInputBankcard) {
        this.recardInputBankcard = recardInputBankcard;
    }

    public void setSaleInputWechat(TextField saleInputWechat) {
        this.saleInputWechat = saleInputWechat;
    }

    public void setSaleReceivableCash(TextField saleReceivableCash) {
        this.saleReceivableCash = saleReceivableCash;
    }

    public void setGpdhSaleDate(DatePicker gpdhSaleDate) {
        this.gpdhSaleDate = gpdhSaleDate;
    }

    public void setGeneratePaymentDetails(Button generatePaymentDetails) {
        this.generatePaymentDetails = generatePaymentDetails;
    }

    public void setSaleInputCash(TextField saleInputCash) {
        this.saleInputCash = saleInputCash;
    }

    public void setSaleReceivableWechat(TextField saleReceivableWechat) {
        this.saleReceivableWechat = saleReceivableWechat;
    }

    public void setAuditReconcile(Button auditReconcile) {
        this.auditReconcile = auditReconcile;
    }

    public void setSaleInputBankcard(TextField saleInputBankcard) {
        this.saleInputBankcard = saleInputBankcard;
    }

    public void setRecardReceivableBankcard(TextField recardReceivableBankcard) {
        this.recardReceivableBankcard = recardReceivableBankcard;
    }

    public void setGpdhEmp(ChoiceBox<GetEmpOutData> gpdhEmp) {
        this.gpdhEmp = gpdhEmp;
    }

    public void setSaleReceivableBankcard(TextField saleReceivableBankcard) {
        this.saleReceivableBankcard = saleReceivableBankcard;
    }

    public void setSaleInputSummary(TextField saleInputSummary) {
        this.saleInputSummary = saleInputSummary;
    }

    public void setRecardReceivableMedicare(TextField recardReceivableMedicare) {
        this.recardReceivableMedicare = recardReceivableMedicare;
    }

    public void setRecardInputMedicare(TextField recardInputMedicare) {
        this.recardInputMedicare = recardInputMedicare;
    }

    public void setRecardReceivableCash(TextField recardReceivableCash) {
        this.recardReceivableCash = recardReceivableCash;
    }

    public void setRecardReceivableSummary(TextField recardReceivableSummary) {
        this.recardReceivableSummary = recardReceivableSummary;
    }

    public void setSaleInputMedicare(TextField saleInputMedicare) {
        this.saleInputMedicare = saleInputMedicare;
    }

    public void setSaleReceivableStorecard(TextField saleReceivableStorecard) {
        this.saleReceivableStorecard = saleReceivableStorecard;
    }

    public void setRecardInputWechat(TextField recardInputWechat) {
        this.recardInputWechat = recardInputWechat;
    }

    public void setRecardReceivableWechat(TextField recardReceivableWechat) {
        this.recardReceivableWechat = recardReceivableWechat;
    }

    public void setRecardInputCash(TextField recardInputCash) {
        this.recardInputCash = recardInputCash;
    }

    public void setSaleTable(GridPane saleTable) {
        this.saleTable = saleTable;
    }

    public void setRecardTable(GridPane recardTable) {
        this.recardTable = recardTable;
    }

    public void setScrollPane(ScrollPane scrollPane) {
        this.scrollPane = scrollPane;
    }

    public void setSaleReceivableAlipay(TextField saleReceivableAlipay) {
        this.saleReceivableAlipay = saleReceivableAlipay;
    }

    public void setSaleInputAlipay(TextField saleInputAlipay) {
        this.saleInputAlipay = saleInputAlipay;
    }

    public void setRecardReceivableAlipay(TextField recardReceivableAlipay) {
        this.recardReceivableAlipay = recardReceivableAlipay;
    }

    public void setRecardInputAlipay(TextField recardInputAlipay) {
        this.recardInputAlipay = recardInputAlipay;
    }

    public void setDailyReconcileController(DailyReconcileController dailyReconcileController) {
        this.dailyReconcileController = dailyReconcileController;
    }

    public void setIndexController(IndexController indexController) {
        this.indexController = indexController;
    }

    public void setTimer(Timer timer) {
        this.timer = timer;
    }

    public void setDailyReconcileOutDataList(ObservableList<DailyReconcileOutData> dailyReconcileOutDataList) {
        this.dailyReconcileOutDataList = dailyReconcileOutDataList;
    }

    public void setDf(DecimalFormat df) {
        this.df = df;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof AddDailyReconcileController)) {
            return false;
        }
        AddDailyReconcileController other = (AddDailyReconcileController)o;
        if (!other.canEqual(this)) {
            return false;
        }
        TextField this$saleReceivableSummary = this.getSaleReceivableSummary();
        TextField other$saleReceivableSummary = other.getSaleReceivableSummary();
        if (this$saleReceivableSummary == null ? other$saleReceivableSummary != null : !this$saleReceivableSummary.equals(other$saleReceivableSummary)) {
            return false;
        }
        TextField this$gpdhBrId = this.getGpdhBrId();
        TextField other$gpdhBrId = other.getGpdhBrId();
        if (this$gpdhBrId == null ? other$gpdhBrId != null : !this$gpdhBrId.equals(other$gpdhBrId)) {
            return false;
        }
        TextField this$recardInputSummary = this.getRecardInputSummary();
        TextField other$recardInputSummary = other.getRecardInputSummary();
        if (this$recardInputSummary == null ? other$recardInputSummary != null : !this$recardInputSummary.equals(other$recardInputSummary)) {
            return false;
        }
        TextField this$saleInputStorecard = this.getSaleInputStorecard();
        TextField other$saleInputStorecard = other.getSaleInputStorecard();
        if (this$saleInputStorecard == null ? other$saleInputStorecard != null : !this$saleInputStorecard.equals(other$saleInputStorecard)) {
            return false;
        }
        TextField this$saleReceivableMedicare = this.getSaleReceivableMedicare();
        TextField other$saleReceivableMedicare = other.getSaleReceivableMedicare();
        if (this$saleReceivableMedicare == null ? other$saleReceivableMedicare != null : !this$saleReceivableMedicare.equals(other$saleReceivableMedicare)) {
            return false;
        }
        TextField this$recardInputBankcard = this.getRecardInputBankcard();
        TextField other$recardInputBankcard = other.getRecardInputBankcard();
        if (this$recardInputBankcard == null ? other$recardInputBankcard != null : !this$recardInputBankcard.equals(other$recardInputBankcard)) {
            return false;
        }
        TextField this$saleInputWechat = this.getSaleInputWechat();
        TextField other$saleInputWechat = other.getSaleInputWechat();
        if (this$saleInputWechat == null ? other$saleInputWechat != null : !this$saleInputWechat.equals(other$saleInputWechat)) {
            return false;
        }
        TextField this$saleReceivableCash = this.getSaleReceivableCash();
        TextField other$saleReceivableCash = other.getSaleReceivableCash();
        if (this$saleReceivableCash == null ? other$saleReceivableCash != null : !this$saleReceivableCash.equals(other$saleReceivableCash)) {
            return false;
        }
        DatePicker this$gpdhSaleDate = this.getGpdhSaleDate();
        DatePicker other$gpdhSaleDate = other.getGpdhSaleDate();
        if (this$gpdhSaleDate == null ? other$gpdhSaleDate != null : !this$gpdhSaleDate.equals(other$gpdhSaleDate)) {
            return false;
        }
        Button this$generatePaymentDetails = this.getGeneratePaymentDetails();
        Button other$generatePaymentDetails = other.getGeneratePaymentDetails();
        if (this$generatePaymentDetails == null ? other$generatePaymentDetails != null : !this$generatePaymentDetails.equals(other$generatePaymentDetails)) {
            return false;
        }
        TextField this$saleInputCash = this.getSaleInputCash();
        TextField other$saleInputCash = other.getSaleInputCash();
        if (this$saleInputCash == null ? other$saleInputCash != null : !this$saleInputCash.equals(other$saleInputCash)) {
            return false;
        }
        TextField this$saleReceivableWechat = this.getSaleReceivableWechat();
        TextField other$saleReceivableWechat = other.getSaleReceivableWechat();
        if (this$saleReceivableWechat == null ? other$saleReceivableWechat != null : !this$saleReceivableWechat.equals(other$saleReceivableWechat)) {
            return false;
        }
        Button this$auditReconcile = this.getAuditReconcile();
        Button other$auditReconcile = other.getAuditReconcile();
        if (this$auditReconcile == null ? other$auditReconcile != null : !this$auditReconcile.equals(other$auditReconcile)) {
            return false;
        }
        TextField this$saleInputBankcard = this.getSaleInputBankcard();
        TextField other$saleInputBankcard = other.getSaleInputBankcard();
        if (this$saleInputBankcard == null ? other$saleInputBankcard != null : !this$saleInputBankcard.equals(other$saleInputBankcard)) {
            return false;
        }
        TextField this$recardReceivableBankcard = this.getRecardReceivableBankcard();
        TextField other$recardReceivableBankcard = other.getRecardReceivableBankcard();
        if (this$recardReceivableBankcard == null ? other$recardReceivableBankcard != null : !this$recardReceivableBankcard.equals(other$recardReceivableBankcard)) {
            return false;
        }
        ChoiceBox<GetEmpOutData> this$gpdhEmp = this.getGpdhEmp();
        ChoiceBox<GetEmpOutData> other$gpdhEmp = other.getGpdhEmp();
        if (this$gpdhEmp == null ? other$gpdhEmp != null : !this$gpdhEmp.equals(other$gpdhEmp)) {
            return false;
        }
        TextField this$saleReceivableBankcard = this.getSaleReceivableBankcard();
        TextField other$saleReceivableBankcard = other.getSaleReceivableBankcard();
        if (this$saleReceivableBankcard == null ? other$saleReceivableBankcard != null : !this$saleReceivableBankcard.equals(other$saleReceivableBankcard)) {
            return false;
        }
        TextField this$saleInputSummary = this.getSaleInputSummary();
        TextField other$saleInputSummary = other.getSaleInputSummary();
        if (this$saleInputSummary == null ? other$saleInputSummary != null : !this$saleInputSummary.equals(other$saleInputSummary)) {
            return false;
        }
        TextField this$recardReceivableMedicare = this.getRecardReceivableMedicare();
        TextField other$recardReceivableMedicare = other.getRecardReceivableMedicare();
        if (this$recardReceivableMedicare == null ? other$recardReceivableMedicare != null : !this$recardReceivableMedicare.equals(other$recardReceivableMedicare)) {
            return false;
        }
        TextField this$recardInputMedicare = this.getRecardInputMedicare();
        TextField other$recardInputMedicare = other.getRecardInputMedicare();
        if (this$recardInputMedicare == null ? other$recardInputMedicare != null : !this$recardInputMedicare.equals(other$recardInputMedicare)) {
            return false;
        }
        TextField this$recardReceivableCash = this.getRecardReceivableCash();
        TextField other$recardReceivableCash = other.getRecardReceivableCash();
        if (this$recardReceivableCash == null ? other$recardReceivableCash != null : !this$recardReceivableCash.equals(other$recardReceivableCash)) {
            return false;
        }
        TextField this$recardReceivableSummary = this.getRecardReceivableSummary();
        TextField other$recardReceivableSummary = other.getRecardReceivableSummary();
        if (this$recardReceivableSummary == null ? other$recardReceivableSummary != null : !this$recardReceivableSummary.equals(other$recardReceivableSummary)) {
            return false;
        }
        TextField this$saleInputMedicare = this.getSaleInputMedicare();
        TextField other$saleInputMedicare = other.getSaleInputMedicare();
        if (this$saleInputMedicare == null ? other$saleInputMedicare != null : !this$saleInputMedicare.equals(other$saleInputMedicare)) {
            return false;
        }
        TextField this$saleReceivableStorecard = this.getSaleReceivableStorecard();
        TextField other$saleReceivableStorecard = other.getSaleReceivableStorecard();
        if (this$saleReceivableStorecard == null ? other$saleReceivableStorecard != null : !this$saleReceivableStorecard.equals(other$saleReceivableStorecard)) {
            return false;
        }
        TextField this$recardInputWechat = this.getRecardInputWechat();
        TextField other$recardInputWechat = other.getRecardInputWechat();
        if (this$recardInputWechat == null ? other$recardInputWechat != null : !this$recardInputWechat.equals(other$recardInputWechat)) {
            return false;
        }
        TextField this$recardReceivableWechat = this.getRecardReceivableWechat();
        TextField other$recardReceivableWechat = other.getRecardReceivableWechat();
        if (this$recardReceivableWechat == null ? other$recardReceivableWechat != null : !this$recardReceivableWechat.equals(other$recardReceivableWechat)) {
            return false;
        }
        TextField this$recardInputCash = this.getRecardInputCash();
        TextField other$recardInputCash = other.getRecardInputCash();
        if (this$recardInputCash == null ? other$recardInputCash != null : !this$recardInputCash.equals(other$recardInputCash)) {
            return false;
        }
        GridPane this$saleTable = this.getSaleTable();
        GridPane other$saleTable = other.getSaleTable();
        if (this$saleTable == null ? other$saleTable != null : !this$saleTable.equals(other$saleTable)) {
            return false;
        }
        GridPane this$recardTable = this.getRecardTable();
        GridPane other$recardTable = other.getRecardTable();
        if (this$recardTable == null ? other$recardTable != null : !this$recardTable.equals(other$recardTable)) {
            return false;
        }
        ScrollPane this$scrollPane = this.getScrollPane();
        ScrollPane other$scrollPane = other.getScrollPane();
        if (this$scrollPane == null ? other$scrollPane != null : !this$scrollPane.equals(other$scrollPane)) {
            return false;
        }
        TextField this$saleReceivableAlipay = this.getSaleReceivableAlipay();
        TextField other$saleReceivableAlipay = other.getSaleReceivableAlipay();
        if (this$saleReceivableAlipay == null ? other$saleReceivableAlipay != null : !this$saleReceivableAlipay.equals(other$saleReceivableAlipay)) {
            return false;
        }
        TextField this$saleInputAlipay = this.getSaleInputAlipay();
        TextField other$saleInputAlipay = other.getSaleInputAlipay();
        if (this$saleInputAlipay == null ? other$saleInputAlipay != null : !this$saleInputAlipay.equals(other$saleInputAlipay)) {
            return false;
        }
        TextField this$recardReceivableAlipay = this.getRecardReceivableAlipay();
        TextField other$recardReceivableAlipay = other.getRecardReceivableAlipay();
        if (this$recardReceivableAlipay == null ? other$recardReceivableAlipay != null : !this$recardReceivableAlipay.equals(other$recardReceivableAlipay)) {
            return false;
        }
        TextField this$recardInputAlipay = this.getRecardInputAlipay();
        TextField other$recardInputAlipay = other.getRecardInputAlipay();
        if (this$recardInputAlipay == null ? other$recardInputAlipay != null : !this$recardInputAlipay.equals(other$recardInputAlipay)) {
            return false;
        }
        DailyReconcileController this$dailyReconcileController = this.getDailyReconcileController();
        DailyReconcileController other$dailyReconcileController = other.getDailyReconcileController();
        if (this$dailyReconcileController == null ? other$dailyReconcileController != null : !(this$dailyReconcileController).equals(other$dailyReconcileController)) {
            return false;
        }
        IndexController this$indexController = this.getIndexController();
        IndexController other$indexController = other.getIndexController();
        if (this$indexController == null ? other$indexController != null : !(this$indexController).equals(other$indexController)) {
            return false;
        }
        Timer this$timer = this.getTimer();
        Timer other$timer = other.getTimer();
        if (this$timer == null ? other$timer != null : !this$timer.equals(other$timer)) {
            return false;
        }
        ObservableList<DailyReconcileOutData> this$dailyReconcileOutDataList = this.getDailyReconcileOutDataList();
        ObservableList<DailyReconcileOutData> other$dailyReconcileOutDataList = other.getDailyReconcileOutDataList();
        if (this$dailyReconcileOutDataList == null ? other$dailyReconcileOutDataList != null : !this$dailyReconcileOutDataList.equals(other$dailyReconcileOutDataList)) {
            return false;
        }
        DecimalFormat this$df = this.getDf();
        DecimalFormat other$df = other.getDf();
        return !(this$df == null ? other$df != null : !(this$df).equals(other$df));
    }

    protected boolean canEqual(Object other) {
        return other instanceof AddDailyReconcileController;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        TextField $saleReceivableSummary = this.getSaleReceivableSummary();
        result = result * 59 + ($saleReceivableSummary == null ? 43 : $saleReceivableSummary.hashCode());
        TextField $gpdhBrId = this.getGpdhBrId();
        result = result * 59 + ($gpdhBrId == null ? 43 : $gpdhBrId.hashCode());
        TextField $recardInputSummary = this.getRecardInputSummary();
        result = result * 59 + ($recardInputSummary == null ? 43 : $recardInputSummary.hashCode());
        TextField $saleInputStorecard = this.getSaleInputStorecard();
        result = result * 59 + ($saleInputStorecard == null ? 43 : $saleInputStorecard.hashCode());
        TextField $saleReceivableMedicare = this.getSaleReceivableMedicare();
        result = result * 59 + ($saleReceivableMedicare == null ? 43 : $saleReceivableMedicare.hashCode());
        TextField $recardInputBankcard = this.getRecardInputBankcard();
        result = result * 59 + ($recardInputBankcard == null ? 43 : $recardInputBankcard.hashCode());
        TextField $saleInputWechat = this.getSaleInputWechat();
        result = result * 59 + ($saleInputWechat == null ? 43 : $saleInputWechat.hashCode());
        TextField $saleReceivableCash = this.getSaleReceivableCash();
        result = result * 59 + ($saleReceivableCash == null ? 43 : $saleReceivableCash.hashCode());
        DatePicker $gpdhSaleDate = this.getGpdhSaleDate();
        result = result * 59 + ($gpdhSaleDate == null ? 43 : $gpdhSaleDate.hashCode());
        Button $generatePaymentDetails = this.getGeneratePaymentDetails();
        result = result * 59 + ($generatePaymentDetails == null ? 43 : $generatePaymentDetails.hashCode());
        TextField $saleInputCash = this.getSaleInputCash();
        result = result * 59 + ($saleInputCash == null ? 43 : $saleInputCash.hashCode());
        TextField $saleReceivableWechat = this.getSaleReceivableWechat();
        result = result * 59 + ($saleReceivableWechat == null ? 43 : $saleReceivableWechat.hashCode());
        Button $auditReconcile = this.getAuditReconcile();
        result = result * 59 + ($auditReconcile == null ? 43 : $auditReconcile.hashCode());
        TextField $saleInputBankcard = this.getSaleInputBankcard();
        result = result * 59 + ($saleInputBankcard == null ? 43 : $saleInputBankcard.hashCode());
        TextField $recardReceivableBankcard = this.getRecardReceivableBankcard();
        result = result * 59 + ($recardReceivableBankcard == null ? 43 : $recardReceivableBankcard.hashCode());
        ChoiceBox<GetEmpOutData> $gpdhEmp = this.getGpdhEmp();
        result = result * 59 + ($gpdhEmp == null ? 43 : $gpdhEmp.hashCode());
        TextField $saleReceivableBankcard = this.getSaleReceivableBankcard();
        result = result * 59 + ($saleReceivableBankcard == null ? 43 : $saleReceivableBankcard.hashCode());
        TextField $saleInputSummary = this.getSaleInputSummary();
        result = result * 59 + ($saleInputSummary == null ? 43 : $saleInputSummary.hashCode());
        TextField $recardReceivableMedicare = this.getRecardReceivableMedicare();
        result = result * 59 + ($recardReceivableMedicare == null ? 43 : $recardReceivableMedicare.hashCode());
        TextField $recardInputMedicare = this.getRecardInputMedicare();
        result = result * 59 + ($recardInputMedicare == null ? 43 : $recardInputMedicare.hashCode());
        TextField $recardReceivableCash = this.getRecardReceivableCash();
        result = result * 59 + ($recardReceivableCash == null ? 43 : $recardReceivableCash.hashCode());
        TextField $recardReceivableSummary = this.getRecardReceivableSummary();
        result = result * 59 + ($recardReceivableSummary == null ? 43 : $recardReceivableSummary.hashCode());
        TextField $saleInputMedicare = this.getSaleInputMedicare();
        result = result * 59 + ($saleInputMedicare == null ? 43 : $saleInputMedicare.hashCode());
        TextField $saleReceivableStorecard = this.getSaleReceivableStorecard();
        result = result * 59 + ($saleReceivableStorecard == null ? 43 : $saleReceivableStorecard.hashCode());
        TextField $recardInputWechat = this.getRecardInputWechat();
        result = result * 59 + ($recardInputWechat == null ? 43 : $recardInputWechat.hashCode());
        TextField $recardReceivableWechat = this.getRecardReceivableWechat();
        result = result * 59 + ($recardReceivableWechat == null ? 43 : $recardReceivableWechat.hashCode());
        TextField $recardInputCash = this.getRecardInputCash();
        result = result * 59 + ($recardInputCash == null ? 43 : $recardInputCash.hashCode());
        GridPane $saleTable = this.getSaleTable();
        result = result * 59 + ($saleTable == null ? 43 : $saleTable.hashCode());
        GridPane $recardTable = this.getRecardTable();
        result = result * 59 + ($recardTable == null ? 43 : $recardTable.hashCode());
        ScrollPane $scrollPane = this.getScrollPane();
        result = result * 59 + ($scrollPane == null ? 43 : $scrollPane.hashCode());
        TextField $saleReceivableAlipay = this.getSaleReceivableAlipay();
        result = result * 59 + ($saleReceivableAlipay == null ? 43 : $saleReceivableAlipay.hashCode());
        TextField $saleInputAlipay = this.getSaleInputAlipay();
        result = result * 59 + ($saleInputAlipay == null ? 43 : $saleInputAlipay.hashCode());
        TextField $recardReceivableAlipay = this.getRecardReceivableAlipay();
        result = result * 59 + ($recardReceivableAlipay == null ? 43 : $recardReceivableAlipay.hashCode());
        TextField $recardInputAlipay = this.getRecardInputAlipay();
        result = result * 59 + ($recardInputAlipay == null ? 43 : $recardInputAlipay.hashCode());
        DailyReconcileController $dailyReconcileController = this.getDailyReconcileController();
        result = result * 59 + ($dailyReconcileController == null ? 43 : ($dailyReconcileController).hashCode());
        IndexController $indexController = this.getIndexController();
        result = result * 59 + ($indexController == null ? 43 : ($indexController).hashCode());
        Timer $timer = this.getTimer();
        result = result * 59 + ($timer == null ? 43 : $timer.hashCode());
        ObservableList<DailyReconcileOutData> $dailyReconcileOutDataList = this.getDailyReconcileOutDataList();
        result = result * 59 + ($dailyReconcileOutDataList == null ? 43 : $dailyReconcileOutDataList.hashCode());
        DecimalFormat $df = this.getDf();
        result = result * 59 + ($df == null ? 43 : ($df).hashCode());
        return result;
    }

    public String toString() {
        return "AddDailyReconcileController(saleReceivableSummary=" + this.getSaleReceivableSummary() + ", gpdhBrId=" + this.getGpdhBrId() + ", recardInputSummary=" + this.getRecardInputSummary() + ", saleInputStorecard=" + this.getSaleInputStorecard() + ", saleReceivableMedicare=" + this.getSaleReceivableMedicare() + ", recardInputBankcard=" + this.getRecardInputBankcard() + ", saleInputWechat=" + this.getSaleInputWechat() + ", saleReceivableCash=" + this.getSaleReceivableCash() + ", gpdhSaleDate=" + this.getGpdhSaleDate() + ", generatePaymentDetails=" + this.getGeneratePaymentDetails() + ", saleInputCash=" + this.getSaleInputCash() + ", saleReceivableWechat=" + this.getSaleReceivableWechat() + ", auditReconcile=" + this.getAuditReconcile() + ", saleInputBankcard=" + this.getSaleInputBankcard() + ", recardReceivableBankcard=" + this.getRecardReceivableBankcard() + ", gpdhEmp=" + this.getGpdhEmp() + ", saleReceivableBankcard=" + this.getSaleReceivableBankcard() + ", saleInputSummary=" + this.getSaleInputSummary() + ", recardReceivableMedicare=" + this.getRecardReceivableMedicare() + ", recardInputMedicare=" + this.getRecardInputMedicare() + ", recardReceivableCash=" + this.getRecardReceivableCash() + ", recardReceivableSummary=" + this.getRecardReceivableSummary() + ", saleInputMedicare=" + this.getSaleInputMedicare() + ", saleReceivableStorecard=" + this.getSaleReceivableStorecard() + ", recardInputWechat=" + this.getRecardInputWechat() + ", recardReceivableWechat=" + this.getRecardReceivableWechat() + ", recardInputCash=" + this.getRecardInputCash() + ", saleTable=" + this.getSaleTable() + ", recardTable=" + this.getRecardTable() + ", scrollPane=" + this.getScrollPane() + ", saleReceivableAlipay=" + this.getSaleReceivableAlipay() + ", saleInputAlipay=" + this.getSaleInputAlipay() + ", recardReceivableAlipay=" + this.getRecardReceivableAlipay() + ", recardInputAlipay=" + this.getRecardInputAlipay() + ", dailyReconcileController=" + this.getDailyReconcileController() + ", indexController=" + this.getIndexController() + ", timer=" + this.getTimer() + ", dailyReconcileOutDataList=" + this.getDailyReconcileOutDataList() + ", df=" + this.getDf() + ")";
    }
}

